A computer network is a collection of two or more computing nodes, which are communicatively coupled via a transmission medium and utilized for transmitting information. Most networks adhere to the layered approach provided by the open systems interconnect (OSI) reference model. The OSI reference provides a seven (7) layer approach, which includes an application layer, (Layer 7), a presentation layer (layer 6), a session layer (Layer 5), a transport layer (Layer 4), a network layer (Layer 3), a data link layer (Layer 2) and a physical layer (Layer 1). Layer 7 through layer 5 inclusive may comprise upper layer protocols, while layer 4 through layer 1 may comprise lower layer protocols. Some networks may utilize only a subset of 7 layers. For example, the TCP/IP model, or Internet Reference model generally utilizes a fiver layer model, which comprises an application layer, (Layer 7), a transport layer (Layer 4), a network layer (Layer 3), a data link layer (Layer 2) and a physical layer (Layer 1). These five layers can be broken down into a fairly specific set of responsibilities or services, which they provide.
Layer 7, the application layer, is typically responsible for supporting network applications such as web browsers and email clients, and is typically implemented in software in end systems such as personal computers and servers. Typical layer 5 protocols comprise HTTP to support the World Wide Web, and SMTP to support electronic mail.
Layer 6, the presentation layer, is typically responsible for masking any differences in data formats that may occur between dissimilar or disparate systems. The presentation layer specifies architecture independent data transfer formats and may enable encoding, decoding, encryption, decryption, compression and/or decompression of data.
Layer 5, the session layer, is typically responsible for managing user session dialogues. In this regard, the session layer may be enabled to control establishment and/or termination of logical links between users. The session layer may also be enabled to provide handling and reporting of upper layer errors.
Layer 4, the transport layer, is typically responsible for passing application layer messages between the client and server sides of an application. In this regard, the transport layer may be enabled to manage end-to-end delivery of messages in the network. The transport layer may comprise various error recovery and/or flow control mechanisms, which may provide reliable delivery of messages. By far the two most common Layer 4 protocols are transmission control protocol (TCP) and user datagram protocol (UDP), which are used in the Internet.
Layer 3, the network layer, is typically responsible for determining how data may be transferred between network devices. Data may be routed according to unique network addresses. In this regard, the network layer may route, for example, datagrams between end systems. Internet Protocol (IP), for example, defines the form and content of the datagrams and is implemented in Layer 3 in combination with any number of routing protocols which may be implemented in the various nodes (devices such as bridges and routers) along a datagram's path from one end system to another.
Layer 2, the data link layer, is typically responsible for moving a packet of data from one node to another. The data link layer defines various procedures and mechanisms for operating communication links and may enable, for example, the framing of packets within the network. The data link layer may enable detection and/or correction of packet errors. The Ethernet (IEEE 802.3) protocol is one common link layer protocol that is used in modern computer networks.
Layer 1, the physical layer, is typically responsible for defining the physical means, which may comprise optical, electrical and/or mechanical means for communicating data via network devices over a communication medium. The converting the bit stream from Layer 2 into a series of physical signals for transmission over a medium. Layer 2 technologies such as Ethernet may implement a number of Layer 1 protocols depending on whether the signal is to be transmitted over twisted-pair cabling or over-the-air for example.
At Layer 2, today's enterprise networks are based predominantly on IEEE 802.3 Ethernet technology. While Ethernet offers ubiquitous and inexpensive connectivity to the Enterprise, it is not particularly strong in controlling access to that network. Although IEEE has attempted to improve access control for wired Ethernet with the IEEE 802.1x standard, this standard did not receive widespread adoption due to a number of reasons. One of these negative factors related to IEEE 802.1x deployment was the fact that 802.1x only validated the users as they signed onto the network and it adhered to the one device per port model. There was no per-packet validation, neither was there any standardized method of implementing access control while supporting more than one device per port. Vendors did provide non-standardized means to provide the latter, but the former remained unimplemented.
IEEE standards 802.1ae, 802.1af, and 802.1ar form the basis of a new architecture for network access control for Ethernet networks. These three standards form a replacement for the existing IEEE 802.1x based access control mechanisms. The IEEE 802.1ae (MACSec) standard defines the data link layer encryption and authentication mechanisms. IEEE 802.1af (currently under development) defines the control plane and keying protocols for 802.1ae. IEEE 802.1ar (currently under development) defines how the network and the devices connected to the network identify and validate each other's identities.
MACSec integrates security into wired Ethernet by identifying the devices connecting to a LAN and classifying the devices as authorized or unauthorized. Exemplary network devices that may be identified and classified comprise computers, wireless access points, servers, VOIP telephones, routers, switches, bridges and hubs.
Although MACSec may provide greater network security and reliability, upgrading an existing network to be MACSec compatible may present problems. In this regard, MACSec provides network protection at the data link layer by encrypting the data of an Ethernet frame, inserting a header (SecTAG) between the source MAC address and the encrypted data, and appending an integrity check value (ICV) after the encrypted data. Consequently, because the SecTAG of a MACSec frame occupies the bit positions normally used for one or more virtual local area network (VLAN) tags in a traditional Ethernet frame, non-MACSec-enabled network nodes may be unable to process MACSec frames, as the SecTAG may be improperly parsed as a VLAN tag.
Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with some aspects of the present invention as set forth in the remainder of the present application with reference to the drawings.